﻿using QMERP.SeedWork;

namespace QMERP.Domain.Entities
{
    public partial class Warehouse : FullEntity<long>
    {
        public Warehouse()
        {
            Stocks = new HashSet<Stock>();
            OutTransferLensOrderDetails = new HashSet<TransferLensOrderDetail>();
            InTransferLensOrderDetails = new HashSet<TransferLensOrderDetail>();
            OutTransferOrderDetails = new HashSet<TransferOrderDetail>();
            InTransferOrderDetails = new HashSet<TransferOrderDetail>();
        }
        /// <summary>
        /// 仓库代码
        /// </summary>
        public string Code { get; set; } = "";
        /// <summary>
        /// 仓库名称
        /// </summary>
        public string Name { get; set; } = "";
        /// <summary>
        /// 仓库地址
        /// </summary>
        public string? Address { get; set; }
        /// <summary>
        /// 管理人
        /// </summary>
        public string? ManageManName { get; set; }
        /// <summary>
        /// 联系电话
        /// </summary>
        public string? Telephone { get; set; }
        /// <summary>
        /// 仓库属性
        /// </summary>
        public string Attribute { get; set; } = "";
        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
        /// <summary>
        /// 库存列表
        /// </summary>
        public virtual ICollection<Stock> Stocks { get; set; }
        /// <summary>
        /// 出入库记录列表
        /// </summary>
        //public virtual ICollection<StockActionLog_Lens> StockActionLog_Lenses { get; set; }
        /// <summary>
        /// 库存订单下的镜种列表
        /// </summary>
        //public virtual ICollection<StockOrder_Lens> StockOrder_Lenses { get; set; }
        /// <summary>
        /// 订单下的镜种列表
        /// </summary>
        //public virtual ICollection<SalesOrder_Lens> SalesOrder_Lenses { get; set; }
        /// <summary>
        /// Out调拨单单详情列表
        /// </summary>
        public virtual ICollection<TransferOrderDetail> OutTransferOrderDetails { get; set; }
        /// <summary>
        /// In调拨单单详情列表
        /// </summary>
        public virtual ICollection<TransferOrderDetail> InTransferOrderDetails { get; set; }
        /// <summary>
        /// Out镜种转换单详情列表
        /// </summary>
        public virtual ICollection<TransferLensOrderDetail> OutTransferLensOrderDetails { get; set; }
        /// <summary>
        /// In镜种转换单详情列表
        /// </summary>
        public virtual ICollection<TransferLensOrderDetail> InTransferLensOrderDetails { get; set; }
        
    }

}
